Justin Elszasz, Mayor’s Office of Innovation
Friday, February 22, 2019
mid.hoods.med.inc <- subset(hmt, med.inc.tier == "middle")
leaflet() %>%
setView(lng = -76.6, lat = 39.3, zoom = 11) %>%
addProviderTiles(providers$Stamen.TonerLite) %>%
addPolygons(data = mid.hoods.med.inc,
color = iteam.colors[3],
weight = 1,
#fillColor = ~pal(MVA17HrdCd),
fillColor = iteam.colors[3],
fillOpacity = .6,
#opacity = 0,
label = ~as.character(mid.hoods.med.inc$MVA17HrdCd)
) %>%
#addGeoJSON(hoods, weight = 1, color = "black", fillOpacity = 0)
addPolygons(data = hoods,
weight = 2,
color = "black",
opacity = 0.5,
fillOpacity = 0,
label = ~hoods$label) %>%
addLegend(data = hmt,
position = "bottomright",
colors = c(iteam.colors[3]),
labels = "Middle (based on 25% - 75% City Median Income)",
title = "")leaflet() %>%
setView(lng = -76.6, lat = 39.3, zoom = 11) %>%
addProviderTiles(providers$Stamen.TonerLite) %>%
addPolygons(data = mid.hoods.med.inc,
color = iteam.colors[3],
weight = 1,
#fillColor = ~pal(MVA17HrdCd),
fillColor = iteam.colors[3],
fillOpacity = .7,
#opacity = 0,
label = ~as.character(mid.hoods.med.inc$MVA17HrdCd)) %>%
addPolygons(data = mid.hoods.hmt,
color = iteam.colors[1],
weight = 1,
#fillColor = ~pal(MVA17HrdCd),
fillColor = iteam.colors[1],
fillOpacity = .5,
#opacity = 0,
label = ~as.character(mid.hoods.hmt$MVA17HrdCd)) %>%
addPolygons(data = hoods,
weight = 2,
color = "black",
opacity = 0.5,
fillOpacity = 0,
label = ~hoods$label) %>%
addLegend("bottomright",
colors = c(iteam.colors[1], iteam.colors[3]),
labels = c("HMT definition", "Median income definition"))hmt.summary <- hmt@data %>%
mutate(hmt.tier = ifelse(hmt.tier %in% c("lower middle", "upper middle"), "middle", hmt.tier)) %>%
group_by(hmt.tier) %>%
summarise(n.block.groups.hmt = n(),
pop.hmt = sum(Population.2016)) %>%
mutate(pct.block.groups.hmt = percent(n.block.groups.hmt / sum(n.block.groups.hmt)),
pct.pop.hmt = percent(pop.hmt / sum(pop.hmt)))
med.inc.summmary <- hmt@data %>%
group_by(med.inc.tier) %>%
summarise(n.block.groups.med.inc = n(),
pop.med.inc = sum(Population.2016)) %>%
mutate(pct.block.groups.med.inc = percent(n.block.groups.med.inc / sum(n.block.groups.med.inc)),
pct.pop.med.inc = percent(pop.med.inc / sum(pop.med.inc)))
left_join(hmt.summary, med.inc.summmary, by = c("hmt.tier" = "med.inc.tier")) %>%
rename(tier = "hmt.tier") %>%
filter(tier != "other") %>%
transmute(Tier = tier,
`Population (HMT)` = pop.hmt,
`% City Pop (HMT)` = pct.pop.hmt,
`Population (Median Income)` = pop.med.inc,
`% City Pop (Median Income)` = pct.pop.med.inc) %>%
kable() %>%
column_spec(c(1,2,3,4,5), width = "10em")| Tier | Population (HMT) | % City Pop (HMT) | Population (Median Income) | % City Pop (Median Income) |
|---|---|---|---|---|
| distressed | 93406 | 14.8% | 226724 | 35.9% |
| healthy | 158813 | 25.1% | 133709 | 21.1% |
| middle | 345964 | 54.7% | 237750 | 37.6% |
| hmt.tier | Mean % Homeowners 65+ | Median % Homeowners 65+ |
|---|---|---|
| distressed | 14.0% | 12.6% |
| healthy | 11.9% | 9.87% |
| lower middle | 17.2% | 15.2% |
| upper middle | 16.8% | 15.0% |
| HMT Tier | Population | SR Count | SR’s per 1,000 Residents |
|---|---|---|---|
| distressed | 93406 | 74156 | 794 |
| lower middle | 183631 | 97962 | 533 |
| healthy | 158813 | 77773 | 490 |
| upper middle | 162333 | 70744 | 436 |
| other | 34184 | 10230 | 299 |
| rank | healthy | upper middle | lower middle | distressed | other |
|---|---|---|---|---|---|
| 1 | TRS-Parking Complaint | SW-Bulk Scheduled | SW-Bulk Scheduled | HCD-Sanitation Property | ECC-Vehicle Look Up |
| 2 | SW-Bulk Scheduled | HCD-Sanitation Property | HCD-Sanitation Property | SW-HGW | TRS-Parking Complaint |
| 3 | HCD-Sanitation Property | TRS-Parking Complaint | SW-Dirty Alley | SW-Dirty Alley | BGE-StLight(s) Out |